//
//  LHViewController.m
//  block
//
//  Created by mac on 15-8-6.
//  Copyright (c) 2015年 zhiyou. All rights reserved.
//
/*
 
 block就是苹果官方推荐的类型，效率高在运行中保存代码。
 
 用来封装和保存代码，类似方法（函数），block可以在任何时候执行。
 
 block 和 方法函数相似之处：
 1.可以保存代码
 2.返回值
 3.传参数
 4.调用方式
 
 
 
 
 */
#import "LHViewController.h"
#import "SetingViewController.h"
#import "SendViewController.h"
#import "Bool.h"
@interface LHViewController ()

@end

@implementation LHViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
	
    //无返回值，无参数的block
    
    void (^MyBlock)()=^(){
    
        NSLog(@" 无返回值，无参数block");
        
    };
    
    MyBlock();
    
    //无返回值，有参数
    
    void (^Myblock)(int,int)=^(int a,int b){
        NSLog(@"有参数，无返回值%d,%d",a ,b);
    };
    Myblock(99,98);
    
   
    //有返回值，有参数
    int (^SumBlock)(int ,int)=^(int a,int b){
        return a+b;
    };

    NSLog(@"总书%d",                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         SumBlock(99,1));
    
    
    
    //block访问外部的变量
    __block int num = 10;
    
    void (^Sun_block)(int)=^(int a){
        num=30;
    };
    
       Sun_block(10);
//1.block内部可以访问外部变量
//2.默认情况下block内部不能修改外部的局部变量，（全局变量除外）
//3.给局部变量添加__block关键字，则局部变量就可以在block内部进行修改
    
    Bool*bo=[[Bool alloc]init];
    [bo download:^(BOOL susecond) {
        if (susecond) {
            NSLog(@"成功啦");
        }
    }];
    
    
}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{

//    SetingViewController*stVC=[[SetingViewController alloc]init];
//    
//    stVC.colorBlock=^(UIColor*color){
//        self.view.backgroundColor=color;
//    };
    
    
    SendViewController*send=[[SendViewController alloc]init];
    send.colorBlock=^(UIColor*color){
        self.view.backgroundColor=color;
    };
    
    [self.navigationController pushViewController:send animated:YES];
}



@end
